package org.example;

import org.example.domain.Question;
import org.example.domain.Teacher;
import org.example.domain.Template;
import org.example.vo.PageVO;
import org.example.vo.QuestionVO;
import org.example.vo.TemplateVO;

import java.util.List;
import java.util.Map;

public interface TemplateService {
    QuestionVO reverseVO(Question question, int currentQuestionNumber);
    boolean templateSave(Template template);

    /**
     *
     * @param page
     * @param count
     * @param map  可能 name course type status（公有，私有，分享，丢弃） tid（当前老师id） shareId（分享老师id）
     * @return
     */
    PageVO showTemplateList(int page, int count, Map<String,Object> map);
    List<Teacher> selectShareTeacher(Long id);
    Template selectTemplateById(Long id);
    int selectTemplateShareCount(Long id);
    void deleteOneList(Long id);
    int setTemplateStatus(Map<String,Object> map);
    void setShareStatus(Long templateId,String teacherIds);
    TemplateVO reverseVO(Template template);
    boolean editSave(Template template);
    void updateTemplateRelationQuestionStatus(List<Long> questionIds,String status);
}
